JACK Audio Connection Kit

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
JACK Audio Connection Kit
Логотип программы JACK Audio Connection Kit
Скриншот программы JACK Audio Connection Kit
Тип демон и Звуковой сервер
Разработчик Пол Дэвис[вд]
Написана на C++ и Си
Операционные системы Unix-подобная операционная система, macOS[2] и Windows[2]
Последняя версия
Репозиторий github.com/jackaudio/jac…
Лицензия GNU GPL
Сайт jackaudio.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

JACK Audio Connection Kit (чаще просто JACK или JACKIT) — звуковой сервер-демон, позволяющий с низкой задержкой соединять между собой так называемые «джэкифицированные» («jackified») приложения. Становится возможной передача как аудио-, так и MIDI-данных.

Джэк может работать с ALSA, PortAudio, CoreAudio, FreeBoB, FFADO и (пока в тестовом режиме) OSS. К 2008 году стал возможен запуск на Linux, FreeBSD и macOS. Текущая версия также поддерживает и Windows.

Название «JACK Audio Connection Kit» переводится на русский язык как «Набор для соединения аудио Джэк» и является рекурсивным акронимом.

Примеры применения JACK

[править | править код]

Многоканальная запись

[править | править код]
Вкладка ALSA в qjackctl
Вкладка Audio в qjackctl

Предположим, нам нужно записать многоканальную композицию с вокалом и синтезатором в качестве инструментов. У нас есть MIDI-клавиатура, программный (виртуальный) синтезатор на компьютере, а также микрофон, подключённый ко входу звуковой карты. По каким-то причинам мы хотим записать обе дорожки одновременно. Тогда, с помощью JACK, мы можем подключить:

  1. MIDI-клавиатуру к виртуальному синтезатору;
  2. Звуковой выход синтезатора к аудиокарте (чтобы слышать, что играем);
  3. Звуковой выход синтезатора к соответствующей дорожке программы звукозаписи;
  4. Звуковой вход аудиокарты (туда подключён микрофон) к соответствующей дорожке программы звукозаписи.

Соответственно, когда мы нажмём на запись, две эти дорожки будут записываться синхронно.

Дублированный перевод

[править | править код]

Другой пример не связан с записью музыки. Благодаря тому, что JACK поддерживается любым из известных в Linux проигрывателей видео (и аудиопроигрывателей, разумеется), можно всё так же подключить микрофон к дорожке программы звукозаписи, но, кроме того, ещё и подключить эту программу к проигрывателю видео. Таким образом можно смотреть фильм и переводить его. Причём перемещение по фильму приведёт к аналогичному перемещению по записываемой звуковой дорожке и наоборот.

Библиотеки

[править | править код]
  • Allegro — библиотека для программирования компьютерных игр
  • bio2jack — библиотека, упрощающая портирование приложений, блокирующих ввод-вывод (blocked input/out, bio) OSS или ALSA на Jack
  • libjackasyn — библиотека, конвертирующая программы, написанные для системы OSS, в программы, понимающие JACK

Примечания

[править | править код]